# 登录功能测试用例：包含不同数据格式的测试数据，覆盖登录成功、密码错误、验证码错误等场景
# 测试数据包含：用户名、密码、验证码、预期结果


# 数据格式1：列表嵌套列表
# 元素顺序：[用户名, 密码, 验证码, 预期结果]
login_data1 = [
    ["13800000001", "123456", "8888", "登录成功"],  # 正确信息，登录成功
    ["13800000001", "1234", "8888", "密码错误"],     # 密码错误
    ["13800000001", "123456", "0000", "验证码错误"]   # 验证码错误
]


# 数据格式2：元组嵌套元组
# 元素顺序：(用户名, 密码, 验证码, 预期结果)
login_data2 = (
    ("13800000001", "123456", "8888", "登录成功"),  # 正确信息，登录成功
    ("13800000001", "1234", "8888", "密码错误"),     # 密码错误
    ("13800000001", "123456", "0000", "验证码错误")   # 验证码错误
)


# 数据格式3：列表嵌套元组
# 元素顺序：(用户名, 密码, 验证码, 预期结果)
login_data3 = [
    ("13800000001", "123456", "8888", "登录成功"),  # 正确信息，登录成功
    ("13800000001", "1234", "8888", "密码错误"),     # 密码错误
    ("13800000001", "123456", "0000", "验证码错误")   # 验证码错误
]


# 数据格式4：列表嵌套字典
# 字典键：username(用户名)、password(密码)、code(验证码)、result(预期结果)
login_data4 = [
    {"username": "13800000001", "password": "123456", "code": "8888", "result": "登录成功"},  # 正确信息，登录成功
    {"username": "13800000001", "password": "666666", "code": "8888", "result": "密码错误"},  # 密码错误
    {"username": "13800000001", "password": "123456", "code": "0000", "result": "验证码错误"}  # 验证码错误
]


# 遍历数据格式3（列表嵌套元组）：通过索引获取元素
print("----- 遍历列表嵌套元组 -----")
for case in login_data3:
    # case[0]：用户名，case[1]：密码，case[2]：验证码，case[3]：预期结果
    print(f"用户名：{case[0]} 密码：{case[1]} 验证码：{case[2]} 期望结果：{case[3]}")


# 遍历数据格式4（列表嵌套字典）：通过键获取值
print("\n----- 遍历列表嵌套字典 -----")
for case in login_data4:
    # 通过字典键获取对应值
    print(f"用户名：{case['username']} 密码：{case['password']} 验证码：{case['code']} 期望结果：{case['result']}")